#ifndef BOLLINGERBANDS_H
#define BOLLINGERBANDS_H

/**
  *@brief Descreve os metodos e variaveis para o calculo da Bandas de Bollinger
  *
  */
class BollingerBands
{
public:
    // Contrutor vazio
    BollingerBands();

    // Calcula as Bandas de Bollinger
    void bollingerBandesCalc(double *fechamento, int numDias, int PERIODO);

    // Calcula a Media Movel Simples
    double calculoMediaMovelSimples(double *fechamento);

    // Calcula o Devio Padrao
    double calculoDesvioPadrao(double MMS,double *fechamento);

    // Gera a Banda Superior
    double geraBandaSuperior(double MMS,double DP);

    // Gera a Banda Inferior
    double geraBandaInferior(double MMS,double DP);

    // Variavel que representa a Banda Superior da Bandas de Bollinger
    double *bandaSuperior;

    // Variavel que representa a Banda Inferior da Bandas de Bollinger
    double *bandaInferior;
    int PERIODO;
};

#endif // BOLLINGERBANDS_H
